package gui;

import java.awt.BorderLayout;

import java.awt.EventQueue;

import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.border.EmptyBorder;
import javax.swing.JTabbedPane;

import fachlogik.Krankenhausverwaltung;
import javax.swing.JMenuBar;
import javax.swing.JMenu;
import javax.swing.JMenuItem;

import jdbc.PatientenException;

public class Main extends JFrame
{
	
	/**
	 * 
	 */
	private static final long serialVersionUID = 1L;

	public Krankenhausverwaltung verwaltung;

	private JPanel contentPane;
	private JTabbedPane tabbedPane;
	private PatientPanel patientPanel;
	private ArztPanel arztPanel;
	/**
	 * Launch the application.
	 */
//	public static void main(String[] args)
//	{
//		EventQueue.invokeLater(new Runnable() {
//			public void run()
//			{
//				try
//				{
//					Main frame = new Main();
//					frame.setVisible(true);
//				} catch (Exception e)
//				{
//					e.printStackTrace();
//				}
//			}
//		});
//	}

	/**
	 * Create the frame.
	 * @throws PatientenException 
	 */
	public Main(Krankenhausverwaltung verwaltung) throws PatientenException
	{
		this.verwaltung = verwaltung;
		
		setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
		setBounds(100, 100, 550, 300);
		contentPane = new JPanel();
		contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));
		contentPane.setLayout(new BorderLayout(0, 0));
		setContentPane(contentPane);
		
		tabbedPane = new JTabbedPane(JTabbedPane.TOP);
		contentPane.add(tabbedPane, BorderLayout.CENTER);
		
		patientPanel = new PatientPanel(verwaltung);
		tabbedPane.addTab("Patienten", null, patientPanel, null);
		
		arztPanel = new ArztPanel(verwaltung);
		tabbedPane.addTab("Arzt", null, arztPanel, null);
		
		KrankenschwesterPanel krankenschwesterPanel = new KrankenschwesterPanel(verwaltung);
		tabbedPane.addTab("Krankenschwester", null, krankenschwesterPanel, null);
		
		PersonalPanel personalPanel = new PersonalPanel(verwaltung);
		tabbedPane.addTab("Personal", null, personalPanel, null);
		
		/**
		 * Datei
		 */
		
		JMenuBar menuBar = new JMenuBar();
		this.setJMenuBar(menuBar);
//		contentPane.add(menuBar, BorderLayout.NORTH);
//		
//		JMenu mnNewMenu = new JMenu("Datei");
//		menuBar.add(mnNewMenu);
//		
//		JMenuItem mntmNeu = new JMenuItem("Neu");
//		mnNewMenu.add(mntmNeu);
//		
//		JMenuItem mntmSpeichern = new JMenuItem("Speichern");
//		mnNewMenu.add(mntmSpeichern);
//		
//		JMenuItem mntmSpeichern_1 = new JMenuItem("Speichern unter");
//		mnNewMenu.add(mntmSpeichern_1);
//		
//		JMenuItem mntmLschen = new JMenuItem("L\u00F6schen");
//		mnNewMenu.add(mntmLschen);
	}
	
	public JTabbedPane getTabbedPane(){
		return tabbedPane;
	}
	
	public void refreshAll(){
		patientPanel.refresh();
		arztPanel.refresh();
	}
	
	public PatientPanel getPatientPanel(){
		return patientPanel;
	}
	
	public void setVerwaltung(Krankenhausverwaltung verwaltung){
		this.verwaltung = verwaltung;
	}

}
